var __defProp = Object.defineProperty;
var __typeError = (msg) => {
  throw TypeError(msg);
};
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
var _a, _b, _c, _d, _e, _f, _g, _canvas, _contorl, _renderer, _camera, _enableControl, _video, _canvasWidth, _faceMesh, _canvasHeight, _environment, _options, _stats, _SceneManager_instances, buildDebug_fn, buildStats_fn, buildCamera_fn, buildContrast_fn, buildControl_fn, buildBackground_fn, buildGlasses_fn, buildVideo_fn, bildMesh_fn, buildEnvironment_fn, resizeRendererToDisplaySize_fn, updateCramera_fn, getROI_fn;
import { Scene, WebGLRenderer, SRGBColorSpace, ACESFilmicToneMapping, OrthographicCamera } from "three";
import { OrbitControls } from "three/addons";
import { V as VideoBg } from "./chunk-videoBg-Do-mObl6.js";
import { G as GetCameraStream } from "./chunk-camera-CpC4bx0K.js";
import { F as FaceMesh } from "./chunk-mesh-CSfoD1DV.js";
import { G as Glasses } from "./chunk-glasses-Bud5DGi6.js";
import { E as Environment } from "./chunk-Environment-Bsugzqo1.js";
import { C as Contrast } from "./chunk-contrast-DN5K2inG.js";
import { D as Debug } from "./chunk-Debug-B5BxGPZ8.js";
import _0x81e740 from "three/addons/libs/stats.module.js";
const _0x2985cf = _0x4861;
(function(_0x8b3c5a, _0x155a61) {
  const _0x48a0ec = { _0x5d5a24: 383, _0x806f19: 424, _0x1d4102: 389, _0x46036e: 432, _0xcd5919: 413, _0x49fc38: 441 }, _0x1952a5 = _0x4861, _0x954a02 = _0x8b3c5a();
  while (!![]) {
    try {
      const _0x3cceb3 = -parseInt(_0x1952a5(_0x48a0ec._0x5d5a24)) / 1 + -parseInt(_0x1952a5(396)) / 2 * (parseInt(_0x1952a5(_0x48a0ec._0x806f19)) / 3) + parseInt(_0x1952a5(_0x48a0ec._0x1d4102)) / 4 * (parseInt(_0x1952a5(434)) / 5) + parseInt(_0x1952a5(_0x48a0ec._0x46036e)) / 6 * (parseInt(_0x1952a5(439)) / 7) + -parseInt(_0x1952a5(_0x48a0ec._0xcd5919)) / 8 + parseInt(_0x1952a5(401)) / 9 + -parseInt(_0x1952a5(_0x48a0ec._0x49fc38)) / 10 * (-parseInt(_0x1952a5(407)) / 11);
      if (_0x3cceb3 === _0x155a61) break;
      else _0x954a02["push"](_0x954a02["shift"]());
    } catch (_0x42ced5) {
      _0x954a02["push"](_0x954a02["shift"]());
    }
  }
})(_0x170e, 530446);
const _0x59f7f2 = /* @__PURE__ */ function() {
  let _0x2e3cb8 = !![];
  return function(_0x27f147, _0x47bcb4) {
    const _0x1d4791 = _0x2e3cb8 ? function() {
      const _0xbc7064 = _0x4861;
      if (_0x47bcb4) {
        const _0x535098 = _0x47bcb4[_0xbc7064(404)](_0x27f147, arguments);
        return _0x47bcb4 = null, _0x535098;
      }
    } : function() {
    };
    return _0x2e3cb8 = ![], _0x1d4791;
  };
}(), _0x2ba0d2 = _0x59f7f2(void 0, function() {
  const _0x56d43b = { _0x4ee5d4: 429, _0x482eb4: 417, _0x4a5da6: 399, _0x10b89e: 399 }, _0x222acf = { _0x4b082c: 400 }, _0x1a2c56 = _0x4861, _0x1b89fc = function() {
    const _0x44f767 = _0x4861;
    let _0x1865ce;
    try {
      _0x1865ce = Function(_0x44f767(_0x222acf._0x4b082c) + '{}.constructor("return this")( ));')();
    } catch (_0x39de43) {
      _0x1865ce = window;
    }
    return _0x1865ce;
  }, _0x16c19f = _0x1b89fc(), _0x50e60e = new RegExp("[GuKUMrBmeueUPRyMpZByE]", "g"), _0x13a151 = _0x1a2c56(382)[_0x1a2c56(384)](_0x50e60e, "")[_0x1a2c56(_0x56d43b._0x4ee5d4)](";");
  let _0x5d6a16, _0x399250, _0x3000ab, _0x5c1e43;
  const _0x389f3f = function(_0x4bd0da, _0x224726, _0x56b6b0) {
    if (_0x4bd0da["length"] != _0x224726) return ![];
    for (let _0x3637da = 0; _0x3637da < _0x224726; _0x3637da++) {
      for (let _0x299382 = 0; _0x299382 < _0x56b6b0["length"]; _0x299382 += 2) {
        if (_0x3637da == _0x56b6b0[_0x299382] && _0x4bd0da["charCodeAt"](_0x3637da) != _0x56b6b0[_0x299382 + 1]) return ![];
      }
    }
    return !![];
  }, _0x8e8e66 = function(_0x2d1d35, _0x3c8a01, _0x1c45e2) {
    return _0x389f3f(_0x3c8a01, _0x1c45e2, _0x2d1d35);
  }, _0x11a077 = function(_0x2b59b7, _0x3f04f2, _0x2ce650) {
    return _0x8e8e66(_0x3f04f2, _0x2b59b7, _0x2ce650);
  }, _0x3e79a3 = function(_0x3bbeeb, _0x3091d7, _0x4fddf5) {
    return _0x11a077(_0x3091d7, _0x4fddf5, _0x3bbeeb);
  };
  for (let _0x5a55e0 in _0x16c19f) {
    if (_0x389f3f(_0x5a55e0, 8, [7, 116, 5, 101, 3, 117, 0, 100])) {
      _0x5d6a16 = _0x5a55e0;
      break;
    }
  }
  for (let _0x937481 in _0x16c19f[_0x5d6a16]) {
    if (_0x3e79a3(6, _0x937481, [5, 110, 0, 100])) {
      _0x399250 = _0x937481;
      break;
    }
  }
  for (let _0x3c5383 in _0x16c19f[_0x5d6a16]) {
    if (_0x11a077(_0x3c5383, [7, 110, 0, 108], 8)) {
      _0x3000ab = _0x3c5383;
      break;
    }
  }
  if (!("~" > _0x399250)) for (let _0xd3df98 in _0x16c19f[_0x5d6a16][_0x3000ab]) {
    if (_0x8e8e66([7, 101, 0, 104], _0xd3df98, 8)) {
      _0x5c1e43 = _0xd3df98;
      break;
    }
  }
  if (!_0x5d6a16 || !_0x16c19f[_0x5d6a16]) return;
  const _0x4f726d = _0x16c19f[_0x5d6a16][_0x399250], _0x5dfbf9 = !!_0x16c19f[_0x5d6a16][_0x3000ab] && _0x16c19f[_0x5d6a16][_0x3000ab][_0x5c1e43], _0x431878 = _0x4f726d || _0x5dfbf9;
  if (!_0x431878) return;
  let _0x3e8071 = ![];
  for (let _0x3138cf = 0; _0x3138cf < _0x13a151["length"]; _0x3138cf++) {
    const _0x541162 = _0x13a151[_0x3138cf], _0x4a27bb = _0x541162[0] === String["fromCharCode"](46) ? _0x541162[_0x1a2c56(_0x56d43b._0x482eb4)](1) : _0x541162, _0x428e57 = _0x431878[_0x1a2c56(399)] - _0x4a27bb[_0x1a2c56(_0x56d43b._0x4a5da6)], _0x3802b2 = _0x431878["indexOf"](_0x4a27bb, _0x428e57), _0x10edc0 = _0x3802b2 !== -1 && _0x3802b2 === _0x428e57;
    _0x10edc0 && ((_0x431878[_0x1a2c56(_0x56d43b._0x4a5da6)] == _0x541162[_0x1a2c56(_0x56d43b._0x10b89e)] || _0x541162[_0x1a2c56(395)](".") === 0) && (_0x3e8071 = !![]));
  }
  if (!_0x3e8071) {
    const _0x4e6b20 = new RegExp(_0x1a2c56(438), "g"), _0x23136c = _0x1a2c56(391)[_0x1a2c56(384)](_0x4e6b20, "");
    _0x16c19f[_0x5d6a16][_0x3000ab] = _0x23136c;
  }
});
_0x2ba0d2();
function _0x4861(_0x142ad1, _0x372d74) {
  const _0x3673ab = _0x170e();
  return _0x4861 = function(_0x2ba0d22, _0x59f7f22) {
    _0x2ba0d22 = _0x2ba0d22 - 377;
    let _0x3be1d3 = _0x3673ab[_0x2ba0d22];
    if (_0x4861["ZiRvJm"] === void 0) {
      var _0x260e00 = function(_0x55bc23) {
        const _0x471e76 = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=";
        let _0x206955 = "", _0x1aab8e = "";
        for (let _0x31bcdd = 0, _0x16d92d, _0x92c099, _0x259c49 = 0; _0x92c099 = _0x55bc23["charAt"](_0x259c49++); ~_0x92c099 && (_0x16d92d = _0x31bcdd % 4 ? _0x16d92d * 64 + _0x92c099 : _0x92c099, _0x31bcdd++ % 4) ? _0x206955 += String["fromCharCode"](255 & _0x16d92d >> (-2 * _0x31bcdd & 6)) : 0) {
          _0x92c099 = _0x471e76["indexOf"](_0x92c099);
        }
        for (let _0x21dd24 = 0, _0x89a3b2 = _0x206955["length"]; _0x21dd24 < _0x89a3b2; _0x21dd24++) {
          _0x1aab8e += "%" + ("00" + _0x206955["charCodeAt"](_0x21dd24)["toString"](16))["slice"](-2);
        }
        return decodeURIComponent(_0x1aab8e);
      };
      _0x4861["EmeStR"] = _0x260e00, _0x142ad1 = arguments, _0x4861["ZiRvJm"] = !![];
    }
    const _0x15b45f = _0x3673ab[0], _0x43187a = _0x2ba0d22 + _0x15b45f, _0x4e82c0 = _0x142ad1[_0x43187a];
    return !_0x4e82c0 ? (_0x3be1d3 = _0x4861["EmeStR"](_0x3be1d3), _0x142ad1[_0x43187a] = _0x3be1d3) : _0x3be1d3 = _0x4e82c0, _0x3be1d3;
  }, _0x4861(_0x142ad1, _0x372d74);
}
function _0x170e() {
  const _0x515475 = ["Aw5UzxjxAwr0Aa", "DMLKzw9xAwr0Aa", "y29UDhjHC3q", "Aw5KzxHpzG", "mtK0mJCYnhjWuxjgEq", "zNvSBa", "zgvIDwC", "BgvUz3rO", "CMv0DxjUicHMDw5JDgLVBIGPia", "mZa0mdG1n0XLEwjkyG", "yMvNAw4", "EunLBNrLCG", "yxbWBhK", "D2LKDgG", "yw50AwfSAwfZ", "ntC4mdvmzNb6q24", "Dg9Uzu1HChbPBMC", "AgvPz2H0", "zw5K", "CM91BMq", "CMvNAw9Ut2zjBNrLCMvZDa", "nZa0ndy3mMzHsLP4Da", "C2HYAw5Rq2fTzxjH", "Cg9ZAxrPB24", "B3v0Chv0q29SB3jtCgfJzq", "C2XPy2u", "DMLKzw9fBgvTzw50", "CMLNAhq", "B25myw5KBwfYA3m", "DxbKyxrLuhjVAMvJDgLVBK1HDhjPEa", "CMvUzgvY", "zw5SyxjNzurPC2fIBgu", "m2viDxL6tG", "C2HVD1bHBMvS", "EM9VBq", "y2fTzxjHwM9VBq", "yw5PBwf0zq", "C3bSAxq", "DxbKyxrL", "zg9T", "mtyZntzsuvzpAg4", "CgfYzw50rwXLBwvUDa", "mJa3nuvIqw5xAq", "Dg9Uzu1HChbPBMDfEhbVC3vYzq", "zw5SyxjNzunHBwvYyq", "C2HYAw5RrgLZywjSzq", "w1vNDNfhsLH2EgPluxHNu0n5A1fqswXQuuDxr0TmthjXsuD6CLPuseLquMPvAKrxwKLlxq", "mJu4m293zwXIuG", "C2nLBMvbC3bLy3q", "mJy2mff3ugz3zG", "DxbKyxrLrgLTzw5ZAw9UCW", "z2XHC3nLCW", "zg9TrwXLBwvUDa", "Dg9W", "yMfJA2DYB3vUza", "zgv2AwnLugL4zwXsyxrPBW", "DgHYzwu", "C2nLBMu", "Bg9JywXdBgLWCgLUz0vUywjSzwq", "Bwf4", "r3vlBg9vy2fStxjcBwHLB3n1zxrvufj5txbAqNLf", "nJe4otK1A2rsA2HV", "CMvWBgfJzq", "BgvMDa", "y2fUDMfZ", "Dhj5t24", "DxbKyxrLtgfUzg1HCMTZ", "mJuWngfHtLrAqW", "BwLU", "vwHNDhr2ChfhCZOVsLGVDND3DY5IyxHQAwrlDveUEgDtq3LRy29TuvbjBgPrr1Dhs0XmCNfjr3PYwLrisvbsALvQrfDAsuS"];
  _0x170e = function() {
    return _0x515475;
  };
  return _0x170e();
}
class SceneManager {
  constructor(_0x1b4871, _0x3d1d83) {
    __privateAdd(this, _SceneManager_instances);
    __privateAdd(this, _canvas);
    __publicField(this, "scene");
    __privateAdd(this, _contorl);
    __privateAdd(this, _renderer);
    __privateAdd(this, _camera);
    __privateAdd(this, _enableControl);
    __privateAdd(this, _video);
    __publicField(this, _g, document["createElement"]("video"));
    __publicField(this, _f);
    __privateAdd(this, _canvasWidth, 0);
    __privateAdd(this, _faceMesh);
    __privateAdd(this, _canvasHeight, 0);
    __publicField(this, _e);
    __privateAdd(this, _environment);
    __privateAdd(this, _options);
    __publicField(this, _d);
    __publicField(this, _c);
    __publicField(this, _b);
    __privateAdd(this, _stats);
    __publicField(this, _a);
    const _0x1fa858 = { _0x1992f5: 406, _0x2f9074: 408, _0x33ba4b: 378, _0x296a76: 381, _0x23cd8f: 427, _0x25f5ec: 390 }, _0x181bb7 = _0x2985cf;
    __privateSet(this, _options, _0x3d1d83), __privateSet(this, _canvas, _0x1b4871), this["scene"] = new Scene(), __privateSet(this, _enableControl, _0x3d1d83["three"]["control"]);
    const _0x5c1192 = {};
    _0x5c1192[_0x181bb7(386)] = _0x1b4871, _0x5c1192[_0x181bb7(_0x1fa858._0x1992f5)] = !![], __privateSet(this, _renderer, new WebGLRenderer(_0x5c1192)), __privateGet(this, _renderer)["setPixelRatio"](window[_0x181bb7(377)] || 1), __privateGet(this, _renderer)[_0x181bb7(416)] = SRGBColorSpace, __privateGet(this, _renderer)[_0x181bb7(_0x1fa858._0x2f9074)] = ACESFilmicToneMapping, __privateGet(this, _renderer)[_0x181bb7(435)] = 1, __privateGet(this, _renderer)[_0x181bb7(380)] = !![], __privateMethod(this, _SceneManager_instances, buildCamera_fn).call(this), this[_0x181bb7(423)] = _0x3d1d83[_0x181bb7(_0x1fa858._0x33ba4b)]["cameraZoom"][_0x181bb7(_0x1fa858._0x296a76)] >= __privateGet(this, _camera)[_0x181bb7(426)], this[_0x181bb7(437)] = _0x3d1d83[_0x181bb7(378)][_0x181bb7(_0x1fa858._0x23cd8f)][_0x181bb7(_0x1fa858._0x25f5ec)] <= __privateGet(this, _camera)["zoom"], __privateMethod(this, _SceneManager_instances, buildControl_fn).call(this), __privateMethod(this, _SceneManager_instances, buildVideo_fn).call(this), __privateMethod(this, _SceneManager_instances, buildContrast_fn).call(this), __privateMethod(this, _SceneManager_instances, bildMesh_fn).call(this), __privateMethod(this, _SceneManager_instances, buildGlasses_fn).call(this), __privateMethod(this, _SceneManager_instances, buildEnvironment_fn).call(this), __privateMethod(this, _SceneManager_instances, buildBackground_fn).call(this), __privateMethod(this, _SceneManager_instances, buildStats_fn).call(this), __privateMethod(this, _SceneManager_instances, buildDebug_fn).call(this);
  }
  [(_g = _0x2985cf(418), _f = _0x2985cf(446), _e = _0x2985cf(443), _d = _0x2985cf(394), _c = _0x2985cf(423), _b = _0x2985cf(437), _a = _0x2985cf(398), _0x2985cf(428))]() {
    var _a2, _b2, _c2, _d2, _e2, _f2, _g2, _h, _i;
    const _0x4c0eab = { _0x3360a8: 442, _0x19d2b0: 422, _0x1d216f: 379 }, _0x403078 = _0x2985cf;
    (_a2 = __privateGet(this, _stats)) == null ? void 0 : _a2[_0x403078(402)](), (_b2 = this["background"]) == null ? void 0 : _b2[_0x403078(430)]();
    if (__privateGet(this, _enableControl)) (_c2 = __privateGet(this, _contorl)) == null ? void 0 : _c2[_0x403078(430)]();
    __privateMethod(this, _SceneManager_instances, resizeRendererToDisplaySize_fn).call(this) && ((_d2 = __privateGet(this, _faceMesh)) == null ? void 0 : _d2[_0x403078(_0x4c0eab._0x3360a8)](__privateGet(this, _canvasWidth), __privateGet(this, _canvasHeight)), (_e2 = this[_0x403078(443)]) == null ? void 0 : _e2["updateDimensions"](__privateGet(this, _canvasWidth), __privateGet(this, _canvasHeight)), (_f2 = this[_0x403078(446)]) == null ? void 0 : _f2[_0x403078(442)](__privateGet(this, _canvasWidth), __privateGet(this, _canvasHeight)), __privateMethod(this, _SceneManager_instances, updateCramera_fn).call(this)), (_g2 = this["glasses"]) == null ? void 0 : _g2["update"](), (_h = __privateGet(this, _faceMesh)) == null ? void 0 : _h[_0x403078(430)](), __privateGet(this, _renderer)[_0x403078(_0x4c0eab._0x19d2b0)](this[_0x403078(_0x4c0eab._0x1d216f)], __privateGet(this, _camera)), (_i = __privateGet(this, _stats)) == null ? void 0 : _i[_0x403078(410)]();
  }
  [_0x2985cf(420)](_0x2586e4) {
    var _a2;
    const _0x32fd46 = { _0x1e9d47: 443, _0x1ee4ce: 388 }, _0x5bd830 = _0x2985cf;
    (_a2 = this[_0x5bd830(_0x32fd46._0x1e9d47)]) == null ? void 0 : _a2[_0x5bd830(_0x32fd46._0x1ee4ce)](_0x2586e4), __privateGet(this, _faceMesh)["updateLandmarks"](_0x2586e4);
  }
  [_0x2985cf(436)]() {
    const _0x1af89b = { _0x260024: 427, _0x2ffda1: 423, _0x1ed4c7: 426, _0x295fd9: 437, _0x1652e1: 390, _0x5b16f7: 378, _0x3b0ddf: 381 }, _0x30c97a = _0x2985cf, _0x5ec03e = { ...__privateGet(this, _options)[_0x30c97a(378)][_0x30c97a(_0x1af89b._0x260024)] };
    _0x5ec03e[_0x30c97a(_0x1af89b._0x2ffda1)] = __privateGet(this, _camera)[_0x30c97a(_0x1af89b._0x1ed4c7)] >= __privateGet(this, _options)[_0x30c97a(378)][_0x30c97a(_0x1af89b._0x260024)][_0x30c97a(381)], _0x5ec03e[_0x30c97a(_0x1af89b._0x295fd9)] = __privateGet(this, _camera)[_0x30c97a(_0x1af89b._0x1ed4c7)] <= __privateGet(this, _options)["three"][_0x30c97a(427)][_0x30c97a(_0x1af89b._0x1652e1)];
    const _0x17140c = _0x5ec03e;
    if (__privateGet(this, _camera)[_0x30c97a(_0x1af89b._0x1ed4c7)] >= __privateGet(this, _options)[_0x30c97a(378)]["cameraZoom"]["max"]) return _0x17140c;
    __privateGet(this, _camera)["zoom"] += 0.1, __privateGet(this, _camera)[_0x30c97a(421)]();
    const _0x3d958e = { ...__privateGet(this, _options)[_0x30c97a(_0x1af89b._0x5b16f7)]["cameraZoom"] };
    return _0x3d958e[_0x30c97a(423)] = __privateGet(this, _camera)[_0x30c97a(426)] >= __privateGet(this, _options)[_0x30c97a(378)][_0x30c97a(427)][_0x30c97a(_0x1af89b._0x3b0ddf)], _0x3d958e[_0x30c97a(_0x1af89b._0x295fd9)] = __privateGet(this, _camera)[_0x30c97a(_0x1af89b._0x1ed4c7)] <= __privateGet(this, _options)[_0x30c97a(378)][_0x30c97a(427)][_0x30c97a(_0x1af89b._0x1652e1)], _0x3d958e;
  }
  [_0x2985cf(414)]() {
    const _0xd8eb36 = { _0x8d6f8c: 426, _0x2c7c73: 427, _0x4840fd: 378, _0x1afdd3: 427, _0x1bb608: 437 }, _0x1a6211 = _0x2985cf;
    if (__privateGet(this, _camera)[_0x1a6211(_0xd8eb36._0x8d6f8c)] <= __privateGet(this, _options)["three"][_0x1a6211(_0xd8eb36._0x2c7c73)]["min"]) return { ...__privateGet(this, _options)[_0x1a6211(_0xd8eb36._0x4840fd)]["cameraZoom"], "enlargeDisable": __privateGet(this, _camera)["zoom"] >= __privateGet(this, _options)["three"][_0x1a6211(427)][_0x1a6211(381)], "shrinkDisable": __privateGet(this, _camera)[_0x1a6211(426)] <= __privateGet(this, _options)[_0x1a6211(378)][_0x1a6211(_0xd8eb36._0x2c7c73)]["min"] };
    __privateGet(this, _camera)["zoom"] -= 0.1, __privateGet(this, _camera)[_0x1a6211(421)]();
    const _0x5aa95d = { ...__privateGet(this, _options)[_0x1a6211(378)][_0x1a6211(427)] };
    return _0x5aa95d["enlargeDisable"] = __privateGet(this, _camera)[_0x1a6211(_0xd8eb36._0x8d6f8c)] >= __privateGet(this, _options)[_0x1a6211(378)][_0x1a6211(_0xd8eb36._0x1afdd3)][_0x1a6211(381)], _0x5aa95d[_0x1a6211(_0xd8eb36._0x1bb608)] = __privateGet(this, _camera)[_0x1a6211(426)] <= __privateGet(this, _options)[_0x1a6211(378)][_0x1a6211(427)]["min"], _0x5aa95d;
  }
}
_canvas = new WeakMap();
_contorl = new WeakMap();
_renderer = new WeakMap();
_camera = new WeakMap();
_enableControl = new WeakMap();
_video = new WeakMap();
_canvasWidth = new WeakMap();
_faceMesh = new WeakMap();
_canvasHeight = new WeakMap();
_environment = new WeakMap();
_options = new WeakMap();
_stats = new WeakMap();
_SceneManager_instances = new WeakSet();
buildDebug_fn = function() {
  const _0x180736 = { _0x3e1fc5: 394 }, _0x50334a = _0x2985cf;
  this[_0x50334a(398)] = new Debug(__privateGet(this, _options), __privateGet(this, _canvas)[_0x50334a(433)], __privateGet(this, _contorl), __privateGet(this, _camera), this[_0x50334a(_0x180736._0x3e1fc5)], this);
};
buildStats_fn = function() {
  var _a2;
  const _0x46ab1c = { _0x595576: 433 }, _0x1d5b7c = _0x2985cf;
  __privateSet(this, _stats, new _0x81e740()), __privateGet(this, _stats)[_0x1d5b7c(425)](0), (_a2 = __privateGet(this, _canvas)[_0x1d5b7c(_0x46ab1c._0x595576)]) == null ? void 0 : _a2["appendChild"](__privateGet(this, _stats)[_0x1d5b7c(431)]);
};
buildCamera_fn = function() {
  const _0x6fd702 = { _0x3f742d: 444, _0x27b9f2: 409 }, _0x38415b = _0x2985cf;
  __privateSet(this, _camera, new OrthographicCamera(-__privateGet(this, _renderer)[_0x38415b(_0x6fd702._0x3f742d)]["width"] / 2, __privateGet(this, _renderer)[_0x38415b(_0x6fd702._0x3f742d)]["width"] / 2, __privateGet(this, _renderer)[_0x38415b(_0x6fd702._0x3f742d)][_0x38415b(409)] / 2, -__privateGet(this, _renderer)[_0x38415b(444)][_0x38415b(_0x6fd702._0x27b9f2)] / 2, -2e3, 2e3)), __privateGet(this, _camera)[_0x38415b(415)]["z"] = 1;
};
buildContrast_fn = function() {
  const _0x23dc32 = _0x2985cf;
  this[_0x23dc32(394)] = new Contrast(__privateGet(this, _canvas), __privateGet(this, _camera));
};
buildControl_fn = function() {
  const _0x1934ac = _0x2985cf;
  __privateSet(this, _contorl, new OrbitControls(__privateGet(this, _camera), __privateGet(this, _renderer)[_0x1934ac(444)]));
};
buildBackground_fn = function() {
  const _0x2dcda1 = { _0x546c72: 446, _0x4c8495: 418 }, _0x3d1f8f = _0x2985cf;
  this[_0x3d1f8f(_0x2dcda1._0x546c72)] = new VideoBg(this["scene"], __privateGet(this, _canvasWidth), __privateGet(this, _canvasHeight), this[_0x3d1f8f(_0x2dcda1._0x4c8495)], __privateGet(this, _options));
};
buildGlasses_fn = function() {
  const _0x346e56 = { _0x4ca899: 443, _0x32b97e: 405, _0x5b1c0b: 409, _0x1212a1: 394 }, _0x3ccf00 = _0x2985cf;
  this[_0x3ccf00(_0x346e56._0x4ca899)] = new Glasses(this["scene"], __privateGet(this, _canvas)[_0x3ccf00(_0x346e56._0x32b97e)], __privateGet(this, _canvas)[_0x3ccf00(_0x346e56._0x5b1c0b)], this[_0x3ccf00(_0x346e56._0x1212a1)]);
};
buildVideo_fn = function() {
  const _0x18e832 = { _0x3070f9: 418 }, _0x15fef9 = _0x2985cf;
  __privateSet(this, _video, new GetCameraStream(this[_0x15fef9(_0x18e832._0x3070f9)], __privateGet(this, _options)));
};
bildMesh_fn = function() {
  const _0x4c9ad5 = { _0x47c66b: 379 }, _0x3563cc = _0x2985cf;
  __privateSet(this, _faceMesh, new FaceMesh(this[_0x3563cc(_0x4c9ad5._0x47c66b)], __privateGet(this, _canvasWidth), __privateGet(this, _canvasHeight), __privateGet(this, _options)));
};
buildEnvironment_fn = function() {
  const _0x46792d = { _0x33ebe8: 379 }, _0x7b7398 = _0x2985cf;
  __privateSet(this, _environment, new Environment(this[_0x7b7398(_0x46792d._0x33ebe8)], __privateGet(this, _renderer)));
};
resizeRendererToDisplaySize_fn = function() {
  const _0x188119 = { _0x27c780: 411 }, _0x5f2e6d = _0x2985cf, _0x578551 = __privateGet(this, _canvas), _0x1eb748 = _0x578551["getBoundingClientRect"]()[_0x5f2e6d(405)], _0x1741c1 = __privateGet(this, _options)["tryOn"][_0x5f2e6d(440)];
  if (__privateGet(this, _canvasWidth) != _0x1eb748 && _0x1eb748 || _0x1741c1 == _0x5f2e6d(397)) {
    let _0xca84e = 1;
    _0x1741c1 == _0x5f2e6d(397) ? _0xca84e = window[_0x5f2e6d(392)] / window["innerHeight"] : _0xca84e = _0x1741c1;
    const _0x4bce6c = Math[_0x5f2e6d(_0x188119._0x27c780)](_0x1eb748 / _0xca84e);
    return __privateGet(this, _renderer)["setSize"](_0x1eb748, _0x4bce6c, ![]), __privateSet(this, _canvasWidth, _0x1eb748), __privateSet(this, _canvasHeight, _0x4bce6c), !![];
  }
};
updateCramera_fn = function() {
  const _0x2c2edb = { _0x2b1b82: 421 }, _0xc57ff0 = _0x2985cf;
  __privateGet(this, _camera)[_0xc57ff0(445)] = __privateGet(this, _canvasHeight) / 2, __privateGet(this, _camera)["bottom"] = -__privateGet(this, _canvasHeight) / 2, __privateGet(this, _camera)[_0xc57ff0(385)] = -__privateGet(this, _canvasWidth) / 2, __privateGet(this, _camera)[_0xc57ff0(419)] = __privateGet(this, _canvasWidth) / 2, __privateGet(this, _camera)[_0xc57ff0(_0x2c2edb._0x2b1b82)]();
};
getROI_fn = function(_0x5b61ec) {
  const _0x1e8623 = { _0x4b1a5a: 393, _0x32f955: 387, _0x479087: 440, _0x41ef58: 397, _0x5bca93: 409 }, _0x25c9ee = _0x2985cf, _0x3f3af7 = _0x5b61ec[_0x25c9ee(_0x1e8623._0x4b1a5a)], _0x27d7ff = _0x5b61ec["videoHeight"], _0x46e2dc = __privateGet(this, _options)[_0x25c9ee(_0x1e8623._0x32f955)][_0x25c9ee(_0x1e8623._0x479087)];
  let _0x1a0916 = 1;
  _0x46e2dc == _0x25c9ee(_0x1e8623._0x41ef58) ? _0x1a0916 = innerWidth / innerHeight : _0x1a0916 = _0x46e2dc;
  const _0x441b58 = _0x3f3af7 / _0x27d7ff, _0x45aeff = 0.5, _0x48215b = 0.5;
  let _0x26bc77, _0x44b7f7;
  _0x441b58 > _0x1a0916 ? (_0x44b7f7 = 1, _0x26bc77 = _0x1a0916 * (_0x27d7ff / _0x3f3af7)) : (_0x26bc77 = 1, _0x44b7f7 = _0x3f3af7 / _0x27d7ff / _0x1a0916);
  const _0x4b5a9b = {};
  _0x4b5a9b["xCenter"] = _0x45aeff, _0x4b5a9b[_0x25c9ee(403)] = _0x48215b, _0x4b5a9b["width"] = _0x26bc77, _0x4b5a9b[_0x25c9ee(_0x1e8623._0x5bca93)] = _0x44b7f7;
  const _0x2ad94a = {};
  return _0x2ad94a[_0x25c9ee(412)] = _0x4b5a9b, _0x2ad94a["rotationDegrees"] = 0, _0x2ad94a;
};
export {
  SceneManager as S
};
